package com.ruoyi.psi.inventory.in.service;

import com.ruoyi.psi.inventory.in.domain.InventoryIn;
import com.ruoyi.psi.inventory.in.domain.InventoryInList;

import java.util.List;

/**
 * 其他入库
 * 业务层
 */
public interface IInventoryInService {


    /**
     * 其他入库查询
     * @param inventoryIn
     * @return
     */
    public List<InventoryIn> selectInventoryInList(InventoryIn inventoryIn);

    /**
     * 按编号查询
     * @param inventoryInId 其他入库编号
     * @return
     */
    public InventoryIn selectInventoryInById(String inventoryInId);

    /**
     * 其他入库新增
     * @param inventoryIn
     * @return
     */
    public int insertInventoryIn(InventoryIn inventoryIn) throws Exception;

    /**
     * 其他入库更新
     * @param inventoryIn
     * @return
     */
    public int updateInventoryIn(InventoryIn inventoryIn) throws Exception;

    /**
     * 更新其他入库删除标志位
     * @param inventoryIn
     * @return
     */
    public int updateInventoryInDeleteFlag(InventoryIn inventoryIn);

    /**
     * 其他入库详细查询
     * @param inventoryInList
     * @return
     */
    public List<InventoryInList> selectInventoryInListList(InventoryInList inventoryInList);

    /**
     * 查询其他入库对应的所有产品详细
     * @param inventoryInId 其他入库编号
     * @return
     */
    public List<InventoryInList> selectInventoryInListListById(String inventoryInId);

    /**
     * 查询其他入库对应的指定产品详细
     * @param inventoryInId
     * @return
     */
    public InventoryInList  selectInventoryInListById(String inventoryInId, String produceId);
}
